package com.yyds.controller;

import com.yyds.common.MyJSON;
import com.yyds.common.R;
import com.yyds.pojo.NatInfo;
import com.yyds.service.NatInfoService;
import com.yyds.vo.EchartPieVo;
import com.yyds.vo.EarchBarVo;
import com.yyds.vo.NatInfoVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;
import java.util.Map;

/**
 * 请不要模仿我
 *
 * @author lxy
 * com.yyds.controller.
 */
@RestController
@RequestMapping("/natinfo")
public class NatInfoController {
    @Autowired
    private NatInfoService natInfoService;
//// natinfo/infotList
    @RequestMapping("/infotList")
    public MyJSON<NatInfo> infotList(@RequestParam Map<String,Object> params){
        // 注意 这里使用 map来接受参数  前端传的不定参数 都可以封装到 map 中
        System.out.println(params);
        return natInfoService.natInfoPageData(params);
    }
    //natinfo/find
    ///  natinfo/infoAllList
    @RequestMapping("/infoAllList")
    public MyJSON<NatInfoVo> infoAllList(@RequestParam Map<String,Object> params){
        // 注意 这里使用 map来接受参数  前端传的不定参数 都可以封装到 map 中
        System.out.println(params);
        return natInfoService.natInfoAllPageData(params);
    }
    //natinfo/deleteNatInfo
    @GetMapping("/deleteNatInfo")
    public R deleteNatInfo(Integer id){
        //根据id 删除
        int result = natInfoService.deleteByPrimaryKey(id);

        if(result==1){
            return R.ok();
        }else{
            return  R.error();
        }
    }
////     /natinfo/addNatInfo
    @PostMapping("/addNatInfo")
    public R addNatInfo(NatInfo natInfo){
        System.out.println(natInfo);

        int result = natInfoService.insertSelective(natInfo);

        if(result==1){
            return R.ok();
        }else{
            return  R.error();
        }
    }
    ////     /natinfo/updateNatInfo
    @PostMapping("/updateNatInfo")
    public R updateNatInfo(NatInfo natInfo){
        System.out.println(natInfo);

        int result = natInfoService.updateByPrimaryKeySelective(natInfo);

        if(result==1){
            return R.ok();
        }else{
            return  R.error();
        }
    }
    //natinfo/echartBar1
    @RequestMapping("/echartBar1")
    public R echartBar(){

        List<EarchBarVo> list = natInfoService.countData();
        return R.ok().data("pie",list);
    }
    @RequestMapping("/echartBar2")
    public R echartBar2(){

        List<EchartPieVo> list = natInfoService.countresultData();
        return R.ok().data("pie2",list);
    }
    @RequestMapping("/deleteAllNatinfo")
    public R deleteAll(String str){
        int count=natInfoService.deleteAll(str);
        return count > 0 ? R.ok() : R.error();
    }

}
